Nonvolatile memory devices such as EEPROM (erasable programmable read-only memory) devices have low power consumption and have been widely used in applications of portable devices such as portable computers, personal digital assistant devices, digital cameras, and cellular phones. The nonvolatile memory devices have the capability of preserving data even when the power supply of the device is turned off
Nonvolatile memory devices have also been developed with write protection features that reduce risks of mistakenly erasing or overwriting data stored in the memory devices. In general, in a portable device, both program code and system data, such as configuration parameters and other firmware, are stored in a segment of the memory device. In order to reliably retain important operational data and program code, it is necessary to have a protection mechanism on the memory device to prevent unintentional erasing or corrupting the system data.
Typically, a conventional EEPROM memory chip may have three different types of protection methods. One is Permanent Software Write Protection (PSWP) which is a non-reversible protection for a segment of the data array of an EEPROM device that can be set permanently by the software. The other part of the data array keeps to be available for write operations. The PSWP method is very reliable to ensure data protection. However, once the permanent software write protection is enabled, by sending a special command to the device, it cannot be reversed. The system data is permanently stored in the given segment and no changes can be made. This method imposes limitations of flexible system accessibility for error correction, system upgrade, and/or system improvement.
Another protection method is hardware write protection which is realized by connecting the WP (write-protection input pin) (protect pin) pin to VCC (power supply voltage) which will protect the array from write or erase operation, regardless of whether or not the software write protection has been enabled. The difference between software write protection and the hardware protection is that the second one (hardware) uses the WP pin of the EEPROM device to protect the entire data array. In addition, in software protection, once a PSWP command is issued it cannot be reversed while the hardware write protection can be disabled by tying the WP pin to VSS (Ground voltage) potential that is the Ground.
As manufacturers produce these memory devices for electronics product developers, some developers prefer to have a flexibility to change the contents while producing the product. Once the product is to be released to the end user, the content of the memory chip should be locked. To meet this requirement, there are memory devices, such as Atmel EEPROM AT34C02B, developed to have a reversible Software Write Protection (RSWP). This is realized by sending a command to the device which programs the reversible write protect register. However, either write protection or reversible write protection must be done with combination biasing on various pins while sending a special command. When a product is already wired on a motherboard of the system, applying biasing is not convenient for product developers.
In view of the above problems, there is a need to develop a memory device with a convenient yet reliable reversible software write protection which allows for product developers to modify the system code at will and enable reliable system protection for end users.